var limsFilemanagementVersion = Gikam.getPageObject({

    getEditListColumns: function () {
        return [{
            checkbox: true
        },{index: true}, {
            field: 'versionCode',
            width: 110,
            validators: ['notEmpty', 'strLength[0,50]'],
            title: 'T_LIMS_FILEMANAGEMENT_VERSION.VERSIONCODE'
        }, {
            field: 'versionStatus',
            width: 110,
            title: 'T_LIMS_FILEMANAGEMENT_VERSION.VERSIONSTATUS',
            type: 'select',
            firstBlank: false,
            category: 'sys',
            param: {
                codeCategoryId: 'versionStatus'
            },
            validators: ['notEmpty'],
            editor: true,
        }, {
            field: 'operateType',
            width: 110,
            title: 'T_LIMS_FILEMANAGEMENT_VERSION.OPERATETYPE',
            type: 'select',
            search: true,
            validators: ['notEmpty'],
            category: 'sys',
            param: {
                codeCategoryId: 'fileOperateType'
            }
        }, {
            field: 'versionDescription',
            width: 160,
            validators: ['notEmpty'],
            title: 'T_LIMS_FILEMANAGEMENT_VERSION.VERSIONDESCRIPTION'
        }, {
            field: 'releaseTime',
            title: 'T_LIMS_FILEMANAGEMENT_VERSION.RELEASETIME',
            type: 'dateTime',
            validators: ['notEmpty'],
            width: 150
        }, {
            field: 'implementationTime',
            title: 'T_LIMS_FILEMANAGEMENT_VERSION.IMPLEMENTATIONTIME',
            type: 'dateTime',
            validators: ['notEmpty'],
            width: 150
        }, {
            field: 'cancellationTime',
            title: 'T_LIMS_FILEMANAGEMENT_VERSION.CANCELLATIONTIME',
            type: 'dateTime',
            validators: ['notEmpty'],
            width: 150
        }, /*{
            field: 'person',
            width: 140,
            title: 'T_LIMS_FILEMANAGEMENT_VERSION.PERSON'
        },*/ {
            field: 'createdByName',
            width: 110,
            title: 'T_LIMS_FILEMANAGEMENT_VERSION.CREATEDBYNAME'
        }, {
            field: 'createdTime',
            title: 'T_LIMS_FILEMANAGEMENT_VERSION.CREATEDTIME',
            width: 150,
            type: 'dateTime'
        },]
    },

    getBaseInfoFormFields: function () {
        return [{
            field: 'versionCode',
            title: 'T_LIMS_FILEMANAGEMENT_VERSION.VERSIONCODE',
            // validators: ['notEmpty', 'strLength[0,50]', 'unique[/secure/basemodule/rm/filemanagement-versions/action/validate-unique]'],
            validators: ['notEmpty', 'strLength[0,50]'],
            preInsert: true
        }, {
            field: 'versionStatus',
            title: 'T_LIMS_FILEMANAGEMENT_VERSION.VERSIONSTATUS',
            type: 'select',
            firstBlank: false,
            category: 'sys',
            param: {
                codeCategoryId: 'versionStatus'
            },
            validators: ['notEmpty'],
            preInsert: true
        }, {
            field: 'operateType',
            title: 'T_LIMS_FILEMANAGEMENT_VERSION.OPERATETYPE',
            validators: ['notEmpty'],
            type: 'select',
            // search: true,
            firstBlank: false,
            category: 'sys',
            param: {
                codeCategoryId: 'fileOperateType'
            },
            preInsert: true
        }, {
            field: 'versionDescription',
            title: 'T_LIMS_FILEMANAGEMENT_VERSION.VERSIONDESCRIPTION',
            validators: ['notEmpty', 'strLength[0,100]'],
            preInsert: true
        }, {
            field: 'releaseTime',
            title: 'T_LIMS_FILEMANAGEMENT_VERSION.RELEASETIME',
            type: 'dateTime',
            validators: ['notEmpty'],
            preInsert: true
        }, {
            field: 'implementationTime',
            title: 'T_LIMS_FILEMANAGEMENT_VERSION.IMPLEMENTATIONTIME',
            type: 'dateTime',
            validators: ['notEmpty'],
            preInsert: true
        }, {
            field: 'cancellationTime',
            title: 'T_LIMS_FILEMANAGEMENT_VERSION.CANCELLATIONTIME',
            type: 'dateTime',
            validators: ['notEmpty'],
            preInsert: true
        },]
    },

    getSearchListColumns: function () {
        return [{
            checkbox: true
        },{index: true}, {
            field: 'versionCode',
            width: 110,
            title: 'T_LIMS_FILEMANAGEMENT_VERSION.VERSIONCODE'
        }, {
            field: 'versionStatus',
            width: 110,
            title: 'T_LIMS_FILEMANAGEMENT_VERSION.VERSIONSTATUS',
            type: 'select',
            firstBlank: false,
            category: 'sys',
            param: {
                codeCategoryId: 'versionStatus'
            },
        }, {
            field: 'versionDescription',
            width: 160,
            title: 'T_LIMS_FILEMANAGEMENT_VERSION.VERSIONDESCRIPTION'
        }, {
            field: 'operateType',
            width: 110,
            title: 'T_LIMS_FILEMANAGEMENT_VERSION.OPERATETYPE',
            type: 'select',
            search: true,
            category: 'sys',
            param: {
                codeCategoryId: 'fileOperateType'
            }
        }, {
            field: 'releaseTime',
            title: 'T_LIMS_FILEMANAGEMENT_VERSION.RELEASETIME',
            type: 'dateTime',
            width: 150
        }, {
            field: 'implementationTime',
            title: 'T_LIMS_FILEMANAGEMENT_VERSION.IMPLEMENTATIONTIME',
            type: 'dateTime',
            width: 150
        }, {
            field: 'cancellationTime',
            title: 'T_LIMS_FILEMANAGEMENT_VERSION.CANCELLATIONTIME',
            type: 'dateTime',
            width: 150
        }, /*{
            field: 'person',
            width: 140,
            title: 'T_LIMS_FILEMANAGEMENT_VERSION.PERSON'
        },*/ {
            field: 'createdByName',
            width: 110,
            title: 'T_LIMS_FILEMANAGEMENT_VERSION.CREATEDBYNAME'
        }, {
            field: 'createdTime',
            title: 'T_LIMS_FILEMANAGEMENT_VERSION.CREATEDTIME',
            width: 150,
            type: 'dateTime'
        },]
    },

    getChooseListColumns: function () {
        return [{index: true},{
            field: 'versionCode',
            title: 'T_LIMS_FILEMANAGEMENT_VERSION.VERSIONCODE'
        }, {
            field: 'versionStatus',
            title: 'T_LIMS_FILEMANAGEMENT_VERSION.VERSIONSTATUS'
        }, {
            field: 'versionDescription',
            title: 'T_LIMS_FILEMANAGEMENT_VERSION.VERSIONDESCRIPTION'
        }, {
            field: 'operateType',
            title: 'T_LIMS_FILEMANAGEMENT_VERSION.OPERATETYPE',
            type: 'select',
            search: true,
            category: 'sys',
            param: {
                codeCategoryId: 'fileOperateType'
            }
        }, {
            field: 'person',
            title: 'T_LIMS_FILEMANAGEMENT_VERSION.PERSON'
        }, {
            field: 'personId',
            title: 'T_LIMS_FILEMANAGEMENT_VERSION.PERSONID'
        },]
    },

    baseUrl: IFM_CONTEXT + '/secure/basemodule/rm/filemanagement-versions'
})
